<?php
//
//
/**
 * 应该在api处调用的简单封装
 * must类型,如果不满足需求会调用 TbfError::client
 * @deprecated please use TbfProtocol
 */
class TbfApi {
    /**
     * 必须是post请求,请在所有action前面加上,避免用户操作错误
     * @deprecated please use TbfInput::mustPost
     */
    static function mustPost(){
        if (!TbfInput::isPost()){
            TbfError::client('http method must be POST');
            return;
        }
    }

    /**
     * 读入字符串参数$key,该参数必须存在
     * @deprecated please use TbfInput::mustInStr
     */
    static function mustInStr($key){
        $value = TbfInput::inStr($key);
        if ($value===''){
            TbfError::client('require '.$key.' parameter');
            return '';
        }
        return $value;
    }

    /**
     * 读入数值参数$key,该参数必须存在
     * @deprecated please use TbfInput::mustInNum
     */
    static function mustInNum($key){
        $value = TbfInput::inNum($key);
        if ($value===0){
            TbfError::client('require '.$key.' parameter');
            return '';
        }
        return $value;
    }
    static function useAjk(){
        TbfError::setClientErrorHandler(function($reason){
            self::ajkError($reason);
            exit;
        });
    }
    static function ajkSuccess($data=null){
        echo json_encode(array('err'=>null,'data'=>$data));
        return;
    }
    static function ajkError($error='fail'){
        echo json_encode(array('err'=>$error));
        return;
    }

    /**
     * 返回成功ajax
     * $msg string ajax返回的消息内容  如果为空不弹窗提示
     * $err bool 是否出错   true为出错提示
     * $url string 跳转地址   如果为空不跳转
     */
    static function AjaxSuccesRequest($msg,$url){
        $result["msg"] = $msg;
        $result["err"] = false;
        $result["url"] = $url;
        echo(json_encode($result));
    }

    /* @返回失败ajax
     *
     *$msg string ajax返回的消息内容  如果为空不弹窗提示
     * $err bool 是否出错   true为出错提示
     * $url string 跳转地址   如果为空不跳转
     */
    static function AjaxErrorRequest($msg,$url){
        $result["msg"] = $msg;
        $result["err"] = true;
        $result["url"] = $url;
        echo(json_encode($result));
    }
}